/**
 * Copyright &copy; 2012-2016 <a href="https://www.kaaction.com">KAA</a> All rights reserved All rights reserved.
 */
package com.kaaction.modules.mer.entity;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import org.hibernate.validator.constraints.Length;

import com.kaaction.common.persistence.DataEntity;
import com.kaaction.modules.eb.entity.Customer;

/**
 * 新订单Entity
 * @author zengbiao
 * @version 2017-05-22
 */
public class MerOrder extends DataEntity<MerOrder> {
	
	private static final long serialVersionUID = 1L;
	private Customer customer;		// customer_id
	private Double rawPrice;		// 刚下单时的价格
	private Integer adjustNum;		// 价格调整次数，为砍价等保留
	private Double currentPrice;		// 真正支付的价格
	private String status;		// 订单状态
	private String recipientName;		// recipient_name
	private String recipientProvince;		// recipient_province
	private String recipientMobile;		// recipient_mobile
	private String recipientCity;		// recipient_city
	private String recipientCounty;		// recipient_county
	private String recipientAddress;		// recipient_address
	private String recipientPostcode;		// recipient_postcode
	private Double transportFee;		// transport_fee
	private String transportType;		// 预留
	private String transportId;		// 快递方的编号
	private String note;		// 买家留言
	
	private Date payDate;	//支付日期
	private Date expressStartDate;//发货日期
	private String isPhoto;//是否是摄影订单
	private String thirdpartyCode;//第三方的订单号
	private String showCode;//
	
	private List<OrderSku> orderSkuList = new ArrayList<OrderSku>();
	
	public MerOrder() {
		super();
	}

	public MerOrder(String id){
		super(id);
	}

	public Customer getCustomer() {
		return customer;
	}

	public void setCustomer(Customer customer) {
		this.customer = customer;
	}

	public Double getRawPrice() {
		return rawPrice;
	}

	public void setRawPrice(Double rawPrice) {
		this.rawPrice = rawPrice;
	}
	
	public Integer getAdjustNum() {
		return adjustNum;
	}

	public void setAdjustNum(Integer adjustNum) {
		this.adjustNum = adjustNum;
	}
	
	public Double getCurrentPrice() {
		return currentPrice;
	}

	public void setCurrentPrice(Double currentPrice) {
		this.currentPrice = currentPrice;
	}
	
	@Length(min=1, max=3, message="订单状态长度必须介于 1 和 3 之间")
	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}
	
	@Length(min=0, max=255, message="recipient_name长度必须介于 0 和 255 之间")
	public String getRecipientName() {
		return recipientName;
	}

	public void setRecipientName(String recipientName) {
		this.recipientName = recipientName;
	}
	
	@Length(min=0, max=255, message="recipient_province长度必须介于 0 和 255 之间")
	public String getRecipientProvince() {
		return recipientProvince;
	}

	public void setRecipientProvince(String recipientProvince) {
		this.recipientProvince = recipientProvince;
	}
	
	@Length(min=0, max=255, message="recipient_mobile长度必须介于 0 和 255 之间")
	public String getRecipientMobile() {
		return recipientMobile;
	}

	public void setRecipientMobile(String recipientMobile) {
		this.recipientMobile = recipientMobile;
	}
	
	@Length(min=0, max=255, message="recipient_city长度必须介于 0 和 255 之间")
	public String getRecipientCity() {
		return recipientCity;
	}

	public void setRecipientCity(String recipientCity) {
		this.recipientCity = recipientCity;
	}
	
	@Length(min=0, max=255, message="recipient_county长度必须介于 0 和 255 之间")
	public String getRecipientCounty() {
		return recipientCounty;
	}

	public void setRecipientCounty(String recipientCounty) {
		this.recipientCounty = recipientCounty;
	}
	
	@Length(min=0, max=255, message="recipient_address长度必须介于 0 和 255 之间")
	public String getRecipientAddress() {
		return recipientAddress;
	}

	public void setRecipientAddress(String recipientAddress) {
		this.recipientAddress = recipientAddress;
	}
	
	@Length(min=0, max=6, message="recipient_postcode长度必须介于 0 和 6 之间")
	public String getRecipientPostcode() {
		return recipientPostcode;
	}

	public void setRecipientPostcode(String recipientPostcode) {
		this.recipientPostcode = recipientPostcode;
	}
	
	public Double getTransportFee() {
		return transportFee;
	}

	public void setTransportFee(Double transportFee) {
		this.transportFee = transportFee;
	}
	
	@Length(min=0, max=64, message="预留长度必须介于 0 和 64 之间")
	public String getTransportType() {
		return transportType;
	}

	public void setTransportType(String transportType) {
		this.transportType = transportType;
	}
	
	@Length(min=0, max=64, message="快递方的编号长度必须介于 0 和 64 之间")
	public String getTransportId() {
		return transportId;
	}

	public void setTransportId(String transportId) {
		this.transportId = transportId;
	}
	
	@Length(min=0, max=255, message="买家留言长度必须介于 0 和 255 之间")
	public String getNote() {
		return note;
	}

	public void setNote(String note) {
		this.note = note;
	}

	public List<OrderSku> getOrderSkuList() {
		return orderSkuList;
	}

	public void setOrderSkuList(List<OrderSku> orderSkuList) {
		this.orderSkuList = orderSkuList;
	}

	public Date getPayDate() {
		return payDate;
	}

	public void setPayDate(Date payDate) {
		this.payDate = payDate;
	}

	public Date getExpressStartDate() {
		return expressStartDate;
	}

	public void setExpressStartDate(Date expressStartDate) {
		this.expressStartDate = expressStartDate;
	}

	public String getIsPhoto() {
		return isPhoto;
	}

	public void setIsPhoto(String isPhoto) {
		this.isPhoto = isPhoto;
	}

	public String getThirdpartyCode() {
		return thirdpartyCode;
	}

	public void setThirdpartyCode(String thirdpartyCode) {
		this.thirdpartyCode = thirdpartyCode;
	}

	public String getShowCode() {
		return showCode;
	}

	public void setShowCode(String showCode) {
		this.showCode = showCode;
	}

}